package br.com.sistemaGabinete.bean;

import java.util.List;

import javax.faces.bean.ApplicationScoped;
import javax.faces.bean.ManagedBean;

import br.com.sistemaGabinete.Controle.Fachada;
import br.com.sistemaGabinete.entity.Usuario;
import br.com.sistemaGabinete.entity.UsuarioSistema;

@ManagedBean(name = "usuarioBean")
@ApplicationScoped
public class UsuarioBean extends ValidateBean {

	private static final long serialVersionUID = 1100235782670052294L;

	private UsuarioSistema usuarioSistema;
	
	private UsuarioSistema usuarioSistemaLogado;
	
	public UsuarioSistema getUsuarioSistemaLogado() {
		return usuarioSistemaLogado;
	}

	public void setUsuarioSistemaLogado(UsuarioSistema usuarioSistemaLogado) {
		this.usuarioSistemaLogado = usuarioSistemaLogado;
	}

	private Fachada fachada;

	public UsuarioBean() {
		setUsuarioSistema(new UsuarioSistema());
		fachada = new Fachada();
	}

	public Usuario obterUsuarioAtivo() {
		return fachada.obterUsuarioAtivo();
	}
	
	public String logar() {
		String retorno = null;
		
		usuarioSistemaLogado = fachada.recuperarUsuarioLogin(usuarioSistema);
		
		if(usuarioSistemaLogado != null && usuarioSistemaLogado.getId() != null){
		
			addMessage("Usuário Logado com Sucesso! ");
			retorno = "index.jsf";
		}
		
		return retorno;
	}

	public String sairSistema() {
		usuarioSistema = null;
		usuarioSistema = new UsuarioSistema();
		return "login.jsf";
	}
	
	
	
	public UsuarioSistema getUsuarioSistema() {
		return usuarioSistema;
	}

	public void setUsuarioSistema(UsuarioSistema usuarioSistema) {
		this.usuarioSistema = usuarioSistema;
	}
	
}
